Skip to content

Energy response#523

Open
viktorsvahn wants to merge 25 commits into
ddmms:mainfrom
viktorsvahn:energy_response
Open

Energy response#523
viktorsvahn wants to merge 25 commits into
ddmms:mainfrom
viktorsvahn:energy_response

Conversation

@viktorsvahn

@viktorsvahn viktorsvahn commented May 2, 2026

Copy link
Copy Markdown

Pre-review checklist for PR author

Summary

Energy response of linear organic molecules of varying chain length to an external electrical field.

Linked issue

#433

Progress

  • Calculations
  • Analysis
  • Application
  • Documentation

Testing

mace-mp-0b3
mace-polar-1-s

New decorators/callbacks

N/A

@ElliottKasoar ElliottKasoar added the new benchmark Proposals and suggestions for new benchmarks label May 5, 2026
Comment thread ml_peg/calcs/electric_field/energy_response/calc_energy_response.py
Comment thread ml_peg/analysis/electric_field/energy_response/metrics.yml Outdated
Comment thread ml_peg/analysis/electric_field/energy_response/metrics.yml Outdated
Comment thread ml_peg/calcs/electric_field/energy_response/calc_energy_response.py Outdated
@joehart2001

Copy link
Copy Markdown
Collaborator

Hi @viktorsvahn thanks for the PR, looking really nice so far!

a few initial points:

  • would it be worth adding dispersion corrections for models trained on non-dispersion corrected functionals? we do this in other benchmarks when relevent e.g. the reference data contains dispersion corrections. see here
  • i know htis is a shorter benchmark but it would be good to have a tqdm progress bar
  • do we need both the analysis scripts?
  • i see what youve done with the metrics.yml, but i think we should write it out in full for consistency
  • is app_scaling_pol.py used?
  • would you be able to restore docs/source/tutorials/python/adding_benchmark.ipynb and models.yml? this will fix the conflicts + we won't need these edits in the production code
  • rebase for latest changes which may effect some imports

@ElliottKasoar

Copy link
Copy Markdown
Collaborator

Hi @viktorsvahn, just wanted to check in and see if there's anything we can do to help?

In addition to the above comments, please can you take a look at our new filtering guidelines: https://ddmms.github.io/ml-peg/developer_guide/filter.html

The principles are relatively simple, but you do have to be a little careful, so again, if anything is unclear, please do ask!

(You'll need to rebase to test this)

@viktorsvahn

Copy link
Copy Markdown
Author

Sorry for taking so long. I am currently on it and I will look at the new guidelines as well!

@ElliottKasoar

ElliottKasoar commented Jul 16, 2026

Copy link
Copy Markdown
Collaborator

Hi @viktorsvahn, thanks for the updates. I hope you don't mind, I just pushed a few minor changes/fixes:

  • Rebased
  • Fixed reading the input data, and removed the skip, since I think it's quick enough that we don't really need to worry about it
  • Updated the way the calculator precision is set
  • Fixed some imports
  • Reverted some stray changes
  • Applied the pre-commit

The pre-commit is still failing, as I only applied the fixes that could be done automatically, so please run this (pre-commit run --all-files and resolve the remaining issues.

Generally it's looking really nice! I think the filtering changes to save the info.json and pass this to the app are still missing. This can probably also get the labels at the same time, but it can also be kept as is.

There also seem to be two different analysis files. Is this an old duplicate?

Please also add this to the documentation. I think you'll need to add a new category file in docs/source/user_guide/benchmarks/ and update the index.rst there too, since we don't currently have one for electric fields.

I'd also suggest considering a very slight rename of the benchmark, e.g. to include the type of systems, as otherwise energy response is quite generic.

clean_calc = model.get_calculator(precision="high")

data_path = download_github_data(
filename="LINEAR_CARBON_wB97M-V.zip",

@ElliottKasoar ElliottKasoar Jul 16, 2026

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would you be able to reupload this as energy_response.zip, and make sure it unzips to energy_response. Currently it unzips to data, which can cause clashes in our cache (and it's useful if the zip file is also benchmark-specific, although that clash is less likely), so you'd need to unzip this, rename the directory, and then re-compress it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new benchmark Proposals and suggestions for new benchmarks

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants